package com.linksfield.topup.entity.interfaces.ordermanage.search.request;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * 订单管理：搜索时
 * request：前端 RequestOrderSearch
 * response：后端 ResponseOrderSearch
 *
 * @author: lm
 * @date: 2019-12-09 15:40
 */
@Data
public class RequestOrderSearch implements Serializable {

    private static final long serialVersionUID = 8234261488326930360L;

    @ApiModelProperty(value = "接口业务类型 。此字段不可传空字符串", example = "search", dataType = "String")
    private String tradeType;

    @ApiModelProperty(value = "中英文请求标志：cn/en  。此字段不可传空字符串", example = "cn", dataType = "String")
    private String lang;

    @ApiModelProperty(value = "定义接口的请求版本，本次接口值：3.0  。此字段不可传空字符串", example = "3.0", dataType = "String")
    private String version;

    @ApiModelProperty(value = "当前页码，默认第1页 。Integer类型不可传空 ", example = "1", dataType = "String")
    private Integer currentPage;

    @ApiModelProperty(value = "当前页面显示多少行，默认10行。Integer类型不可传空", example = "10", dataType = "String")
    private Integer rp;

    @ApiModelProperty(value = "搜索条件:原始套餐名称/原始套餐编码/新建套餐名称/新建套餐编码 ，全部请传空字符串。此字段可传空字符串", example = "套餐", dataType = "String")
    private String condition;

    @ApiModelProperty(value = "企业唯一编码，选中某个企业此字段必传值不可为空。管理员全部企业请传空字符串。此字段可传空字符串", example = "P000270", dataType = "String")
    private String partnerCode;

    @ApiModelProperty(value = "起始时间，未选择请传空字符串。此字段可传空字符串", example = "", dataType = "String")
    private String startDate;

    @ApiModelProperty(value = "结束时间，未选择请传空字符串。此字段可传空字符串", example = "", dataType = "String")
    private String endDate;

    @ApiModelProperty(value = "订单套餐状态（1-未启用；2-正在使用；3-已结束）,未选择请传空字符串。此字段可传空字符串", example = "1", dataType = "String")
    private String packageStatus;

    @ApiModelProperty(value = "支付状态（1-已支付；2-已退款）,未选择请传空字符串。此字段可传空字符串", example = "1", dataType = "String")
    private String payStatus;

    @ApiModelProperty(value = "交易类型，也是付款模式（0-单次购买；1-周期订阅（））,未选择请传空字符串。此字段可传空字符串", example = "1", dataType = "String")
    private String payMode;

}
